
// Boost Includes ==============================================================
#include <boost/python.hpp>
#include <boost/cstdint.hpp>

// Includes ====================================================================
#include <OpenSG/OSGVector.h>
#include <Wrappers.h>

// Using =======================================================================
using namespace boost::python;

// Module ======================================================================
void Export_src_pyste_Pnt()
{
    class_< osg::PointInterface<float,osg::VecStorage3<float> >, bases< osg::VecStorage3<float> >  >("Pnt3f", init<  >())
        .def(init< const osg::Real32* >())
        .def(init< osg::Real32* >())
        .def(init< const osg::PointInterface<float,osg::VecStorage3<float> >& >())
        .def(init< const osg::Real32, const osg::Real32 >())
        .def(init< const osg::Real32, const osg::Real32, const osg::Real32 >())
        .def(init< const osg::Real32, const osg::Real32, const osg::Real32, const osg::Real32 >())
        .def_readonly("Null", &osg::PointInterface<float,osg::VecStorage3<float> >::Null)
        .def("setNull", &osg::PointInterface<float,osg::VecStorage3<float> >::setNull)
        .def("setValue", (void (osg::PointInterface<float,osg::VecStorage3<float> >::*)(const osg::PointInterface<float,osg::VecStorage3<float> >&) )&osg::PointInterface<float,osg::VecStorage3<float> >::setValue)
        .def("setValue", (void (osg::PointInterface<float,osg::VecStorage3<float> >::*)(const osg::Real32*) )&osg::PointInterface<float,osg::VecStorage3<float> >::setValue)
        .def("setValue", (void (osg::PointInterface<float,osg::VecStorage3<float> >::*)(osg::Real32*) )&osg::PointInterface<float,osg::VecStorage3<float> >::setValue)
        .def("setValueFromCString", (void (osg::PointInterface<float,osg::VecStorage3<float> >::*)(const osg::Char8*) )&osg::PointInterface<float,osg::VecStorage3<float> >::setValueFromCString)
        .def("setValueFromCString", (void (osg::PointInterface<float,osg::VecStorage3<float> >::*)(osg::Char8*) )&osg::PointInterface<float,osg::VecStorage3<float> >::setValueFromCString)
        .def("setValue", (void (osg::PointInterface<float,osg::VecStorage3<float> >::*)(const osg::Char8*) )&osg::PointInterface<float,osg::VecStorage3<float> >::setValue)
        .def("setValue", (void (osg::PointInterface<float,osg::VecStorage3<float> >::*)(osg::Char8*) )&osg::PointInterface<float,osg::VecStorage3<float> >::setValue)
        .def("getValues", &osgwrap::getValues3< osg::PointInterface<osg::Real32,osg::VecStorage3<osg::Real32> > >)
        .def("getValues", &osgwrap::getValues3< osg::PointInterface<osg::Real32,osg::VecStorage3<osg::Real32> > >)
        .def("isZero", &osg::PointInterface<float,osg::VecStorage3<float> >::isZero)
        .def("negate", &osg::PointInterface<float,osg::VecStorage3<float> >::negate)
        .def("equals", &osg::PointInterface<float,osg::VecStorage3<float> >::equals)
        .def("subZero", (osg::VectorInterface<float,osg::VecStorage3<float> >& (osg::PointInterface<float,osg::VecStorage3<float> >::*)() )&osg::PointInterface<float,osg::VecStorage3<float> >::subZero, return_internal_reference< 1 >())
        .def("subZero", (const osg::VectorInterface<float,osg::VecStorage3<float> >& (osg::PointInterface<float,osg::VecStorage3<float> >::*)() const)&osg::PointInterface<float,osg::VecStorage3<float> >::subZero, return_internal_reference< 1 >())
        .def("dist", &osg::PointInterface<float,osg::VecStorage3<float> >::dist)
        .def("dist2", &osg::PointInterface<float,osg::VecStorage3<float> >::dist2)
        .def("maxValue", &osg::PointInterface<float,osg::VecStorage3<float> >::maxValue)
        .def( self *= other< osg::Real32 >() )
        .def( self /= other< osg::Real32 >() )
        .def( self - self )
        .def( self + other< osg::VectorInterface<float,osg::VecStorage3<float> > >() )
        .def( self - other< osg::VectorInterface<float,osg::VecStorage3<float> > >() )
        .def( self * other< osg::Real32 >() )
        .def( -self )
        .def( self += other< osg::VectorInterface<float,osg::VecStorage3<float> > >() )
        .def( self -= other< osg::VectorInterface<float,osg::VecStorage3<float> > >() )
        .def( self < self )
        .def( self == self )
        .def( self != self )
    ;

    class_< osg::PointInterface<float,osg::VecStorage4<float> >, bases< osg::VecStorage4<float> >  >("Pnt4f", init<  >())
        .def(init< const osg::Real32* >())
        .def(init< osg::Real32* >())
        .def(init< const osg::PointInterface<float,osg::VecStorage4<float> >& >())
        .def(init< const osg::Real32, const osg::Real32 >())
        .def(init< const osg::Real32, const osg::Real32, const osg::Real32 >())
        .def(init< const osg::Real32, const osg::Real32, const osg::Real32, const osg::Real32 >())
        .def_readonly("Null", &osg::PointInterface<float,osg::VecStorage4<float> >::Null)
        .def("setNull", &osg::PointInterface<float,osg::VecStorage4<float> >::setNull)
        .def("setValue", (void (osg::PointInterface<float,osg::VecStorage4<float> >::*)(const osg::PointInterface<float,osg::VecStorage4<float> >&) )&osg::PointInterface<float,osg::VecStorage4<float> >::setValue)
        .def("setValue", (void (osg::PointInterface<float,osg::VecStorage4<float> >::*)(const osg::Real32*) )&osg::PointInterface<float,osg::VecStorage4<float> >::setValue)
        .def("setValue", (void (osg::PointInterface<float,osg::VecStorage4<float> >::*)(osg::Real32*) )&osg::PointInterface<float,osg::VecStorage4<float> >::setValue)
        .def("setValueFromCString", (void (osg::PointInterface<float,osg::VecStorage4<float> >::*)(const osg::Char8*) )&osg::PointInterface<float,osg::VecStorage4<float> >::setValueFromCString)
        .def("setValueFromCString", (void (osg::PointInterface<float,osg::VecStorage4<float> >::*)(osg::Char8*) )&osg::PointInterface<float,osg::VecStorage4<float> >::setValueFromCString)
        .def("setValue", (void (osg::PointInterface<float,osg::VecStorage4<float> >::*)(const osg::Char8*) )&osg::PointInterface<float,osg::VecStorage4<float> >::setValue)
        .def("setValue", (void (osg::PointInterface<float,osg::VecStorage4<float> >::*)(osg::Char8*) )&osg::PointInterface<float,osg::VecStorage4<float> >::setValue)
        .def("getValues", &osgwrap::getValues4< osg::PointInterface<osg::Real32,osg::VecStorage4<osg::Real32> > >)
        .def("getValues", &osgwrap::getValues4< osg::PointInterface<osg::Real32,osg::VecStorage4<osg::Real32> > >)
        .def("isZero", &osg::PointInterface<float,osg::VecStorage4<float> >::isZero)
        .def("negate", &osg::PointInterface<float,osg::VecStorage4<float> >::negate)
        .def("equals", &osg::PointInterface<float,osg::VecStorage4<float> >::equals)
        .def("subZero", (osg::VectorInterface<float,osg::VecStorage4<float> >& (osg::PointInterface<float,osg::VecStorage4<float> >::*)() )&osg::PointInterface<float,osg::VecStorage4<float> >::subZero, return_internal_reference< 1 >())
        .def("subZero", (const osg::VectorInterface<float,osg::VecStorage4<float> >& (osg::PointInterface<float,osg::VecStorage4<float> >::*)() const)&osg::PointInterface<float,osg::VecStorage4<float> >::subZero, return_internal_reference< 1 >())
        .def("dist", &osg::PointInterface<float,osg::VecStorage4<float> >::dist)
        .def("dist2", &osg::PointInterface<float,osg::VecStorage4<float> >::dist2)
        .def("maxValue", &osg::PointInterface<float,osg::VecStorage4<float> >::maxValue)
        .def( self *= other< osg::Real32 >() )
        .def( self /= other< osg::Real32 >() )
        .def( self - self )
        .def( self + other< osg::VectorInterface<float,osg::VecStorage4<float> > >() )
        .def( self - other< osg::VectorInterface<float,osg::VecStorage4<float> > >() )
        .def( self * other< osg::Real32 >() )
        .def( -self )
        .def( self += other< osg::VectorInterface<float,osg::VecStorage4<float> > >() )
        .def( self -= other< osg::VectorInterface<float,osg::VecStorage4<float> > >() )
        .def( self < self )
        .def( self == self )
        .def( self != self )
    ;

}

